                  
           III.2.   
                     ()


   

   2. 
   2.1.     
   2.2.  
   2.3.    
   2.4. 
   2.4.1. 
   2.4.2.  
   2.4.3. 
   2.4.4.   
   2.5.  
   2.5.1.  
   2.5.2.    (CHN,INCLUDE)
   2.5.3.    (ORG,LOC)
   2.5.4.      (OBJ)
   2.5.5.    (REL)
   2.5.6.   (EQU)
   2.5.7.    
   2.5.8.     (DSECT-DEND)
   2.5.9.    (ENTRY-EXTRN)
   2.5.10.   (DO-ELSE-FIN)
   2.5.11.   
   2.6. 
   2.6.1.      
   2.6.2.     
   2.6.3.    
   2.6.4.   
   2.7.     
   2.8.   


   2. 

   2.1.     

     -   . ,  
 , -         
 .
        -
 ,       .  
   .   -
        .  
       -
,          -
 .
        -
.         
  ,     - 
() .     
    ,    -
       ,    
      -
  .
          
  .      -
      -
       .
       ,  
       -
.
       :   -
  ,     -
 .


   2.2.  

    (  ,    
 ,     )    
     :

[ [:] ] [ {}  [ {} ]] .

     ,      
  ,  , .
            ,
  '*'  ';' .
             .
        .
             
.


   2.3.    

           
   , ,      
.    ,     
  16 .
            
:
 -        -
      ;
 -    EQU    
      ;
 -    EXTRN    -
     ,       
        .
      .
           
  . : ,   - 
  EQU, ORG, LOC, OBJ  DS   -
 ;    ,     
 :        
.
   -       -
   .    -
 ,         
  :
        JSR M
        ...
     M: LDA #0
        ...
        BNE M
         -
 ,         -
 .
            -
 , :
      EQU 32
      EQU 4
            LDA #*


   2.4. 

   2.4.1. 

            -
    ,    , 
   :
 -  ( )   0  255  -  -
         0- ;
 -  ( )  0  65535 -  -
      .
      ,    ,
    .     ,  
    .
          4- 
:
 - : 123 , 62236 ( );
 - : $7B , $F31C ;
 - : @173 , @171434 ;
 - : :01111011 , :1111001100011100 .


   2.4.2.  

     -     ,  
   (').      
. :
     'A  '5  '#'  '' ( )
        : 
 .
     ASC  DCI   :
 ,    -
,    :
     .TO TEKCT.   "PBET"   =TEKCT "PBET"=


   2.4.3. 

     :
       [ < ]  { _  }
         >
       _:  + - * / ! & %
       .
       ,   -
   '*' ,      
.
      '&',  '!'    '%'
 .
      '+',  '-', -
 '*'      '/'      
65536 ($10000):
      65500+200=164
      $1234-$1237=$FFFD .
     '<'  '>'      ,
,         
  (       -
):
      >$ABCD  -  $CD ,
      <$ABCD  -  $AB .
       ,   -
  ,  .   '>'  '<'
 .
        :
 -        -
    ,   -
      -
  :
      LDA (0-1),Y  ;=$FF
      LDA #$1234   ;=$34
 -      (  0--
)       :
      LDA 0-1 ($FF!)   LDA $20,X   -  0-,
      LDA $FFFF+1       LDA $100-1  -  .

    :
      10*$A+7    ; = 107=$6B
      10*$A+7/2  ; = 107/2=53=$35
      <@17*@30   ; = 15*24/256=1
      :10110110%:10110111 ; = :00000001
      >$3FFF+1   ; = 0
      <$3F0F+1   ; = $3F,   $40
      *+2        ; = .+2
      5*7+*      ; = < +35
     ADR    :
      LDA #>ADR
      STA ADRES
      LDA #<ADR
      STA ADRES+1


   2.4.4.   

          -
:
        - , 0-, ,
   #    - ,
    ,X  -   X ( ),
    ,Y  -   Y,
   (,X) - -  X,
   (),Y - -  Y,
   ()   -    JMP.
      0-   
   ,    (-
  ).
         
 ,    .  A .
   :
                  
      LDA #>ADRES         LDA (ADRES,X)+1
      ASL A               CMP A
      LSR                 LDA 10+>$1000
      STA (LOC+2),Y       STA (LOC)+2,Y
      ADC COMMON-1,X      ADC COMMON,X-1
      CMP WORK            STA ADR+#8


   2.5.  

   2.5.1.  

          ,      
(  ),     -
         -
,   ..
    :
     ASC   DEND    DW      FIN    REP
     CHR   DFB     ELSE    LST    SBTL
     CHN   DO      ENTRY   MSB    SKIP
     DCI   DS      EXTRN   PAGE   OBJ
     DDB   DSECT   EQU     REL    ORG
    ,     "":
     LOC   IF      ENDIF   INCLUDE


   2.5.2.    (CHN,INCLUDE)

         
   .      -
    :

    CHN    

         ,
 .
    :

    INCLUDE   

         
  -     
  .
         
   .
         
.  2.6.


   2.5.3.    (ORG,LOC)

   :

    ORG  

   , ..:
 -     ,     
    (   - .  2.6.1);
 -      (..
      ).
    :

    LOC  

      ;  
         ;
        "
 " :       
  "" .
     LOC        
ORG,      ORG.
   X        
,     .
        $FFFF.
 

   2.5.4.      (OBJ)

    OBJ  
        -
         .  
        
,     .
          
 ""  (  ORG):     
     ,       
    .
    ,     
    ( , ).


   2.5.5.    (REL)

    REL
         -
 .        
        -
  , ,   -
   .


   2.5.6.   (EQU)

      EQU  
          -
,       . -
:
       EQU $1000
        EQU 5
      EQU 20
       EQU 2
      EQU 28
      EQU +-1
         EQU +
        EQU *
        EQU +
          
    .
           
,   ,   , -
   .
         ,
   .


   2.5.7.    

            -
  ,    
:
 DFB M1,...,Mn -          
                 ;
 DW  A1,...,An -        
                 (>A,<A);
 DDB A1,...,An -   (<A,>A);
  (:    DW  DDB   )
 ASC XX   -  ASCII-     -
                   ; X -  ,  
                   ;
 DCI XX   -  ,    ,  -
                 ,     ( -
                      -
                 );
 DS  X -    ()  ;
              
           .
   B 

     MSB ON    MSB OFF

  /      (1  0,
)      
  ASC  DCI.    MSB ON.


   2.5.8.     (DSECT-DEND)

    DSECT
     ...
    DEND
      ,   -
  .       -
      ,    -
 . :
    DSECT
     ORG $2000
     TAB EQU *    ; = 2000      
     T.TREK DS 1  ; = 2000    
     T.SECT DS 1  ; = 2001
     T.BUFF DS 2  ; = 2002
    DEND


   2.5.9.    (ENTRY-EXTRN)

    ENTRY  
    EXTRN  
         
,   .
   ENTRY   ,   -
, EXTRN -     .    
        
,     .
    EXTRN       -
    (, ) .
         -  
 ,       ,  
 ,   EQU.


   2.5.10.   (DO-ELSE-FIN)

    DO      DO     DO <-> IF
    ...                 ...
    ELSE                FIN
    ...
    FIN                                FIN <-> ENDIF

       0,      
 DO  FIN (DO  ELSE)   .
       ELSE-FIN,
 ,   .
    IF  ENDIF     
 DO  FIN,    .


   2.5.11.   

          -
        

    LST ON    LST OFF .
    LST REST      ,
     LST ON/OFF.

        :
 SBTL XX -     
                  .   -
                       
                 (  ).   -
                .
 PAGE         -      -
                      '-L'.
 CHR    -  ,    REP;
 REP     -    -, -
                     -
                 (     CHR,  '*');
 SKP     -     .
         .   
 ...      -
   -  ,    -
 SBTL    , -   -
  -  ,       
  ( ).


   2.6. 

   2.6.1.      

              
  :
 '.ASM' -    ;
 '.PRG' -    ;
 '.REL' -    ;
 '.LST' -    ;
 '.DBG' -       
           Debugger.
       :    
          
 .
           
 ( ORG   1 ),    
2-           
     .
, 3  ,     
   '.ASM'    '.CMD',
'1.CMD'  '2.CMD'.
     ,       
  - ,    .


   2.6.2.     

        'ASM.PRG'    -
  .      
   ;       
          
    /H :

      :
    ASM[/] sr {bj} {lst}
    sr -   
    bj -   
    lst -   
       :
    D -  DBG-
    H -  
    N -   
    R -  REL-
       :
    L -  
    P[=<>] -  
    S -  
    W -  


   2.6.3.    

           -
   .     -
    :

     >>  
          :       -  
            : XXX.PRG      -  
          :           -  
          :            -   
         DBG-:           -   XXX.DBG

       ""  -
 :       ( -
   -   ""  ""  ).
          " ",
..    ,     
   ("").    
    (  -
    '.PRG')  - ( '.LST')
-    .      
        -
.
       :  -
   ,    .
          -
   .     ,
  CHN  INCLUDE     -
.        -
  .      -
    ,     -
   .


   2.6.4.   

          
 ,  ,    -     -
       .
           
LST ON/OFF    -   ,   
 .
            
 2  3.   - 1. -
     - .
      :
     _:   _  _
    . :

 1C72: 20 13 18  92 METKA    JSR KEYIN    ;EM C
 1C75: C9 8D     93          CMP #RETURN
 1C77: D0 F9     94          BNE METKA
 ***      95
 1C79: 4C 00 00  95          JMP XXXX

   ,  ,    .
            
,       
  ,       
   (   ASCII-,  -  
 ), :

       1C4A ABS         76 AREASIZE
     ? 0986 C.TABLE     32 INVFLG
     N 1C72 METKA   * 0000 XXXX
     :
     ? - ,    ;
     * -  ;
     X - EXTRN-;
     N - ENTRY-;
     R -  .


   2.7.     

1.          
         .
2.     .
3.   .
4.        .
5.   IF, ENDIF, DBG, LOC.
6.        
    (   ).
7.     .
8.      16- .
9.   'ROL'  'ROL A'.
10.  'ORG'     .
11.  DBG-    .
12.      .
13.    : 1,2,3.
14.       .
15.   ,      
     .
16.   'ON/OFF'  'REST',   
       .


   2.8.   

         
    :

D000-EEFF (ROM2-D0) -   ;
8000-BFFF (RAM2) -      ;
1800-1BFF (.),
7E00-7FFF ( ) -     ;
0060-00A1 -  
0040-007F -   (   );
 